Interactive media environments are typically resource constrained in terms of available processing power, memory and other resources that are available to applications running in the environment. One common example of interactive media is video encoded on DVD (digital versatile disc) where users can interact with graphical menus or other controls to navigate to specific video content or invoke special features that are authored into the DVD.
In a typical interactive media environment, visual elements such as graphics and menus are given a “Z order” that provides a visual order for the elements on a display screen. The Z order controls how visual elements appear to stack on top of one another along an imaginary z-axis which extends outwardly from the display screen. Visual elements with a lower Z order appear to be at the bottom of display (and farther away from a viewer) while visual elements with a higher Z order appear to be on top of the lower Z ordered elements (and thus closer to the viewer).
Generally, when rendering the visual elements for display, the lower Z ordered elements are drawn first followed by higher Z ordered elements. The higher Z ordered visual elements will then be drawn over and may occlude portions or all of the lowered Z ordered elements. In this way, the display appears correctly with the visual elements in the stack having proper overlap and relative order. However, such methodology forces resources to be focused on the bottom most visual elements (because they are drawn first) which can be inefficient. Processing power is wasted in drawing low Z ordered visual elements even when such elements end up being occluded by the higher Z ordered elements in the completely drawn scene. Such inefficiency can overtax system resources and lead to undesirable player behavior such as disruptions in video playback and the synchronization between video and graphics in the environment.